<!DOCTYPE HTML>
<html lang="en">
<head>
<title>StreamDevice: mbboDirect Records</title>
<meta charset="utf-8" />
<link rel="shortcut icon" href="favicon.ico" />
<link rel="stylesheet" type="text/css" href="stream.css" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="author" content="Dirk Zimoch" />
</head>
<body>
<iframe src="nav.html" id="navleft"></iframe>
<h1>mbboDirect Records</h1>

<h2>Normal Operation</h2>
<p>
Depending on the format type, different record fields are used
for output and input. The variable <code><i>x</i></code> stands for the
written or read value.
</p>
<dl>
 <dt>DOUBLE format (e.g. <code>%f</code>):</dt>
  <dd>
   Not allowed.
  </dd>
 <dt>LONG or ENUM format (e.g. <code>%i</code>):</dt>
  <dd>
   <dl>
    <dt>If <code>MASK==0</code> (because <code>NOBT</code> is not set):</dt>
     <dd>
       <u>Output:</u> <code><i>x</i>=RVAL</code><br>
       <u>Input:</u> <code>RAL=<i>x</i></code>, <code>VAL=RVAL&gt;&gt;SHFT</code><br>
     </dd>
    <dt>If <code>MASK!=0</code>:</dt>
     <dd>
       <u>Output:</u> <code><i>x</i>=RVAL&amp;MASK</code><br>
       <u>Input:</u> <code>RBV=RVAL=<i>x</i>&amp;MASK</code>, <code>VAL=RVAL&gt;&gt;SHFT</code><br>
     </dd>
    </dl>
    <code>MASK</code> is initialized to <code>NOBT</code> 1-bits shifted
    left by <code>SHFT</code> (<code>((2^NOBT)-1)&lt;&lt;SHFT</code>).
    The record calculates <code>RVAL=VAL&lt;&lt;SHFT</code>.
  </dd>
 <dt>STRING format (e.g. <code>%s</code>):</dt>
  <dd>
   Not allowed.
  </dd>
</dl>

<h2>Initialization</h2>
<p>
 During <a href="processing.html#init">initialization</a>, the <code>@init</code> handler is executed, if
 present.
</p>

<footer>
<nav>
<a href="aai.html">aai</a>
<a href="aao.html">aao</a>
<a href="ai.html">ai</a>
<a href="ao.html">ao</a>
<a href="bi.html">bi</a>
<a href="bo.html">bo</a>
<a href="calcout.html">calcout</a>
<a href="int64in.html">int64in</a>
<a href="int64out.html">int64out</a>
<a href="longin.html">longin</a>
<a href="longout.html">longout</a>
<a href="lsi.html">lsi</a>
<a href="lso.html">lso</a>
<a href="mbbiDirect.html">mbbiDirect</a>
<a href="mbboDirect.html">mbboDirect</a>
<a href="mbbi.html">mbbi</a>
<a href="mbbo.html">mbbo</a>
<a href="scalcout.html">scalcout</a>
<a href="stringin.html">stringin</a>
<a href="stringout.html">stringout</a>
<a href="waveform.html">waveform</a>
</nav>
Dirk Zimoch, 2018
</footer>
</body>
</html>
